/*================================================================
*   Copyright (C) 2020 belonging to YangZhengQing. All rights reserved.
*   
*   文件名称：CRC_u8.h
*   创 建 者：YangZhengQing
*   创建日期：2020年03月02日
*   描    述：
*
*================================================================*/


//#pragma once

#ifndef CRC_U8_H_
#define CRC_U8_H_

#include "type.h"

#define FALSE                0
#define TRUE                 1

//crc初始化
#define POLYNOMIAL			 0x21
#define INITVAL				 0x00
#define XOR					 0x01

//crc结构体
typedef struct
{
	u8 poly;//多项式
	u8 InitValue;//初始值
	u8 xor;//结果异或值
	unsigned char InputReverse;
	unsigned char OutputReverse;
}CRC_8;

//crc表
const CRC_8 crc_8;
const CRC_8 crc_8_ITU;
const CRC_8 crc_8_ROHC;
const CRC_8 crc_8_MAXIM;


//函数声明
u8 reverse8(u8 data);

u8 crc8(u8 *addr, int num, CRC_8 type);

#endif
